-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Integration with binsider
#45
base: develop
Are you sure you want to change the base?
Conversation
- rename `VariableSelector` into `Selector` - rename `DqeResult` into `ScopedVariable` - use `Selector::by_name` instead of manual creating of `Name` selector - add reminder comment for oracle watchpoints
…e clashes with watchpoints)
- rename `TypeIdentity` into `TypeId` - add `TypeIdenty` type - name + namespace - use type `TypeIdenty` in `VariableIR` instead of just name
…f `VariableIR` as structure members and array items representation
7f8cc50
to
70cff26
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a good start!
I realized some things are missing, so I might contribute next week. Mainly, hexdump keys and selecting dynamic libraries does not seem to be working.
Btw, how do you feel about this? Do you think the integration was worth it, is the API okay and so on? I'm happy to make improvements based on your feedback :)
README.md
Outdated
similar to readelf(1) and strace(1). | ||
It lets you inspect strings, examine linked libraries, and perform hexdumps, all within a user-friendly TUI. | ||
|
||
- `binsider` - run binsider inside a debugger |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Consider also supporting a short version like b
or bn
since binsider
might be a long to type.
Also, we can have more specific commands as shortcuts, for example:
static_info
->binsider --tab static-analysis
strings
->binsider --tab strings
And so on :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good idea! I'm add bn
shortcut. About specific commands - i think it's nice too, but looks like we need to make simple api for it first :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sounds reasonable!
src/ui/third_party/binsider.rs
Outdated
break; | ||
} | ||
let command = Command::from(key); | ||
state.run_command(command, sender.clone())?; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You can also disable some commands here FYI - e.g. I'm not sure selecting dynamic dependencies work as expected.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep, I made it as simple as possible for two reasons:
- this is a development branch of the
bs
and I think its ok to have some non-working functionality for now - i expect that we will be able to make all the functionality work before the next 0.x release of
bs
:)
Thank @orhun , I think current integration is a good start too, but we need to do some improvements :) I'm going to create a draft PR in It's sad that it's impossible to integrate btw I've been on a little trip and now I'll have more time to work on this integration and help with the development of |
70cff26
to
8bb8de5
Compare
Just left a comment there, the rationale for the changes weren't quite clear to me.
I don't think it is impossible, it is just a bit of work.
Yup, I think in the worst case we can spawn a terminal inside the TUI (using I will look into this and try to integrate something (on stream, probably). |
No, there is no other apps that using Unfortunately, this also all looks complicated :( |
bdcd916
to
30abee3
Compare
30abee3
to
dcb557f
Compare
No description provided.